<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <h2>直接通过FormData上传文件给接口</h2>
    <!-- e.target.files[0] -->
    <!-- 推荐用户选择 图片 -->
    <input type="file" accept="image/*" />
    <img src="" alt="" />
    <!-- 点击按钮 上传用户选择的图片 -->
    <button>上传</button>
    <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>

    <script>
      // 1.点击按钮上传图片
      document.querySelector('button').onclick = function () {
        // 2.实例化formData 默认是空的
        const data1 = new FormData()
        // 3. 追加数据
        // console.log(document.querySelector('input').files)
        // console.log(document.querySelector('input').files[0])
        // 获取到用户选择的文件
        const img = document.querySelector('input').files[0]
        // formData中有数据了 key:value
        // key==avatar
        // value ==选择的图片
        data1.append('avatar', img)
        // console.log(data.get('avatar'))
        axios({
          url: 'http://ajax-api.itheima.net/api/file',
          method: 'post',
          data: data1, // data:data
        }).then((res) => {
          console.log('res:', res)
          // console.log(res.data.data.url)
          // 渲染出来
          document.querySelector('img').src = res.data.data.url
        })
      }
    </script>
  </body>
</html>
